package com.glsc.ngateway.common.base.domain.mysql.opmanage.report.excel;

import java.io.Serializable;
import java.util.Date;

public class TRSId implements Serializable {
    private static final long serialVersionUID = 1L;
    private Date valuationDate;
    private Date date;
    private Double mthlyExpMvmt;
    private Double dailyExpMvmt;

    public TRSId(){
        super();
    }

    public TRSId(Date valuationDate,Date date,Double mthlyExpMvmt,Double dailyExpMvmt){
        super();
        this.valuationDate=valuationDate;
        this.date=date;
        this.dailyExpMvmt=dailyExpMvmt;
        this.mthlyExpMvmt=mthlyExpMvmt;
    }

    public void setDailyExpMvmt(Double dailyExpMvmt) {
        this.dailyExpMvmt = dailyExpMvmt;
    }

    public Double getDailyExpMvmt() {
        return dailyExpMvmt;
    }

    public void setMthlyExpMvmt(Double mthlyExpMvmt) {
        this.mthlyExpMvmt = mthlyExpMvmt;
    }

    public Double getMthlyExpMvmt() {
        return mthlyExpMvmt;
    }

    public void setValuationDate(Date valuationDate) {
        this.valuationDate = valuationDate;
    }

    public Date getValuationDate() {
        return valuationDate;
    }

    public void setDate(Date date) {
        this.date = date;
    }

    public Date getDate() {
        return date;
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((valuationDate == null) ? 0 : valuationDate.hashCode());
        result = prime * result + ((date == null) ? 0 : date.hashCode());
        result = prime * result + ((dailyExpMvmt == null) ? 0 : dailyExpMvmt.hashCode());
        result = prime * result + ((mthlyExpMvmt == null) ? 0 : mthlyExpMvmt.hashCode());
        return result;
    }
    @Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;
        if (getClass() != obj.getClass())
            return false;
        TRSId other = (TRSId) obj;
        if (valuationDate == null) {
            if (other.valuationDate != null)
                return false;
        } else if (!valuationDate.equals(other.valuationDate))
            return false;
        if (date == null) {
            if (other.date != null)
                return false;
        } else if (!date.equals(other.date))
            return false;
        if (dailyExpMvmt == null) {
            if (other.dailyExpMvmt != null)
                return false;
        } else if (!dailyExpMvmt.equals(other.dailyExpMvmt))
            return false;
        if (mthlyExpMvmt == null) {
            if (other.mthlyExpMvmt != null)
                return false;
        } else if (!mthlyExpMvmt.equals(other.mthlyExpMvmt))
            return false;
        return true;
    }
}